<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
<title>Welcome &middot; Crafting Interpreters</title>

<!-- Tell mobile browsers we're optimized for them and they don't need to crop
     the viewport. -->
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<link rel="stylesheet" type="text/css" href="style.css" />

<!-- Oh, God, Source Code Pro is so beautiful it makes me want to cry. -->
<link href='https://fonts.googleapis.com/css?family=Source+Code+Pro:400|Source+Sans+Pro:300,400,600' rel='stylesheet' type='text/css'>

<link rel="icon" type="image/png" href="image/favicon.png" />
<script src="jquery-3.4.1.min.js"></script>
<script src="script.js"></script>

<!-- Google analytics -->
<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-42804721-2', 'auto');
  ga('send', 'pageview');
</script>

</head>
<body id="top">

<!-- <div class="scrim"></div> -->
<nav class="wide">
  <a href="/"><img src="image/logotype-small.png" title="Crafting Interpreters"></a>
  <div class="contents">
<!-- A title with no part means it's a part chapter. -->
<h2><small>I</small>Welcome</h2>

<ul>
    <li><a href="introduction.html"><small>1</small>Introduction</a></li>
    <li><a href="a-map-of-the-territory.html"><small>2</small>A Map of the Territory</a></li>
    <li><a href="the-lox-language.html"><small>3</small>The Lox Language</a></li>
</ul>


<div class="prev-next">
    <a href="contents.html" title="Table of Contents" class="left">&larr;&nbsp;Previous</a>
    <a href="contents.html" title="Table of Contents">&uarr;&nbsp;Up</a>
    <a href="introduction.html" title="Introduction" class="right">Next&nbsp;&rarr;</a>
</div>  </div>
</nav>

<nav class="narrow">
<a href="/"><img src="image/logotype-small.png" title="Crafting Interpreters"></a>
<a href="contents.html" title="Table of Contents" class="prev">←</a>
<a href="introduction.html" title="Introduction" class="next">→</a>
</nav>

<div class="page">
<div class="nav-wrapper">
<nav class="floating">
  <a href="/"><img src="image/logotype-small.png" title="Crafting Interpreters"></a>
  <div class="expandable">
<!-- A title with no part means it's a part chapter. -->
<h2><small>I</small>Welcome</h2>

<ul>
    <li><a href="introduction.html"><small>1</small>Introduction</a></li>
    <li><a href="a-map-of-the-territory.html"><small>2</small>A Map of the Territory</a></li>
    <li><a href="the-lox-language.html"><small>3</small>The Lox Language</a></li>
</ul>


<div class="prev-next">
    <a href="contents.html" title="Table of Contents" class="left">&larr;&nbsp;Previous</a>
    <a href="contents.html" title="Table of Contents">&uarr;&nbsp;Up</a>
    <a href="introduction.html" title="Introduction" class="right">Next&nbsp;&rarr;</a>
</div>  </div>
  <a id="expand-nav">≡</a>
</nav>
</div>

<article class="chapter">

  <div class="number">I</div>
  <h1 class="part">Welcome</h1>

<div class="sign-up closable">
  <h1>This book is a work in progress!</h1>
    <span class="dismiss">&times;</span>
    <p>If you see a mistake, find something unclear, or have a suggestion, please <a href="https://github.com/munificent/craftinginterpreters/issues" target="_blank">let me know</a>. To follow its progress, please join the mailing list:</p>

  <!-- Begin MailChimp Signup Form -->
  <div id="mc_embed_signup">
  <form action="//gameprogrammingpatterns.us7.list-manage.com/subscribe/post?u=0952ca43ed2536d6717766b88&amp;id=6e96334109" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate>
    <input type="email" value="" name="EMAIL" class="email" id="mce-EMAIL" placeholder="Your email address" required>
    <!-- real people should not fill this in and expect good things - do not remove this or risk form bot signups-->
    <div style="position: absolute; left: -5000px;" aria-hidden="true"><input type="text" name="b_0952ca43ed2536d6717766b88_6e96334109" tabindex="-1" value=""></div>
    <input type="submit" value="Sign me up!" name="subscribe" id="mc-embedded-subscribe" class="button">
  </form>
  </div>
  <!--End mc_embed_signup-->
  <p class="small">(I post about once a month. Don&#8217;t worry, I won&#8217;t spam you.)</p>
</div>

<p>This may be the beginning of a grand adventure. Programming languages encompass
a huge space to explore and play in. Plenty of room for your own creations to
share with others or just enjoy yourself. Brilliant computer scientists and
software engineers have spent entire careers traversing this land without ever
reaching the end. If this book is your first entry into the country, welcome.</p>
<p>The pages of this book give you a guided tour through some of the world of
languages. But before we strap on our hiking boots and venture out, we should
familiarize ourselves with the territory. The chapters in this part introduce
you to the basic concepts used by programming languages and how they are
organized.</p>
<p>We will also get acquainted with Lox, the language we&rsquo;ll spend the rest of the
book implementing (twice). Let&rsquo;s go!</p>

<footer>
<a href="introduction.html" class="next">
  Next Chapter: &ldquo;Introduction&rdquo; &rarr;
</a>
Handcrafted by Robert Nystrom&ensp;&mdash;&ensp;<a href="https://github.com/munificent/craftinginterpreters/blob/master/LICENSE" target="_blank">&copy; 2015&hairsp;&ndash;&hairsp;2020</a>
</footer>
</article>

</div>
</body>
</html>
